Debug 合集 1

Mybatis-Plus 的默认 Insert 方法不支持 SQLite 主键id自增后返回id

写毕设项目的时候遇到的 需要插入一条新的记录然后返回新记录的主键id 这个id是自增的

然后发现Mybatis-Plus的默认Insert方法不支持这个操作 可以插入但是不能返回自增后的id

后来用事务解决了:本来用SQLite就是考虑到项目的数据量较小才用的 所以直接用串行化在插入操作之后查询SELECT last_insert_rowid()获取刚刚插入的记录的id字段

上网查了一下似乎改一下sqlite-jdbc的版本就能解决?不过我没试过:sqlite-jdbc版本导致插入数据自增id问题

CentOS SQLite临时文件溢出

2024-11-20-00-03-17

明天着急检查 先用 rm -rf /tmp/sqlite-jdbc-tmp* 指令删了再说 之后再找溢出原因

力扣刷题bug

117. 填充每个节点的下一个右侧节点指针 II - 力扣(LeetCode)

碰到个bug 力扣给的Node的构造函数是这样的:

1
2
3
4
5
6
7
8
9
"""
# Definition for a Node.
class Node:
def __init__(self, val: int = 0, left: 'Node' = None, right: 'Node' = None, next: 'Node' = None):
self.val = val
self.left = left
self.right = right
self.next = next
"""

在Pycharm里写的时候self.next被调用的时候如果next为None会导致指向next函数生成的某个对象而不是None 需要改成None

UEFI PXE安装Linux操作系统 客户端error: cant’t find command

img

从网上找到的解决方法

出现这个错误的一般是grub.cfg配置问题,通过UEFI的引导方式我们可以将linux、initrd修改为linuxefi、initrdefi再尝试引导

问题grub.cfg

1
2
3
4
5
set timeout=5
menuentry 'REDHAT 7' {
linux uefi/vmlinuz ip=dhcp inst.ks=ftp://172.18.0.1:/other/ks.cfg
initrd uefi/initrd.img
}

修改为:

1
2
3
4
5
set timeout=5
menuentry 'REDHAT 7' {
linuxefi uefi/vmlinuz ip=dhcp inst.ks=ftp://172.18.0.1:/other/ks.cfg
initrdefi uefi/initrd.img
}

参考:

UEFI PXE安装Linux操作系统 error: cant't find command解决办法
UEFI PXE安装Linux操作系统 error: cant't find command解决办法
Can’t find command linuxefi and initrdefi while booting from uefi

SSH连接不到Ubuntu服务器OS ip

可能是因为安装的时候没选安装Open SSH,在服务器上安装并启动就好了

  1. 安装并启动 SSH 服务
    1
    2
    3
    sudo apt update
    sudo apt install openssh-server # 安装
    sudo systemctl enable --now ssh # 立即启动 + 开机自启
  2. 检查服务状态
    1
    sudo systemctl status ssh
  3. 防火墙放行(如启用了 ufw)
    1
    2
    sudo ufw allow ssh        # 或 sudo ufw allow 22/tcp
    sudo ufw reload

查询os ip指令:ip a